1. Field of the Invention
The present invention relates to a numerical controller, and in particular, relates to a numerical controller having a multi-core processor and capable of improving performance by causing a plurality of cores of the multi-core processor to perform axis control routine in a distributed manner.
2. Description of the Related Art
Processing of control software of a numerical controller that controls machine tools includes processing of high real-time properties as typified by various kinds of interpolation routine and axis control routine to create distribution data to each control axis and processing of low real-time properties as typified by automatic operation routine that analyzes a machining program or creates interpolation preparation data and HMI (human-machine interface) routine that performs an operation in accordance with the screen display or an operation.
The axis control routine having high real-time properties needs to be completed within a specified period and thus, if the time of the axis control routine increases with an increasing number of control axes, it becomes difficult to allocate the processing time within the specified period to other automatic operation routine or HMI routine having low real-time properties. When, for example, a machining program instructed in mold machining and formed of micro-segment lines is operated at high speed, it is necessary to analyze the machining program and to create interpolation preparation data in large quantities in a short time, but automatic operation routine or HMI routine is not adequately performed in situations in which the time of axis control routine increases and therefore, problems of unreachability of the command speed, an irregular machined surface due to an interrupted distribution pulse, a slower update of the screen display and a slower response to an operation arise.
For the purpose of smoothly analyzing a machining program and creating interpolation preparation data, JP 63-181005 A and JP 1-195507 A propose a technology that divides the analyzing of a machining program and creation of interpolation preparation data into a plurality of processes and allocates each of the divided processes to each CPU of a multi-CPU for processing.
Also, for the purpose of reducing the costs, JP 2014-35564 A discloses a technology that provides a numerical controller having a multi-core processor, wherein a numerical control processor and a sequence control processor, provided separately in the past, are integrated as one of multi-cores of one processor, respectively, and also enables integration of peripheral control LSI by connecting the processor and the peripheral control LSI by a high-speed serial bus to reduce the number of pins of the LSI.
The amount of processing by control software of a numerical controller increases year by year due to adoption of multi-axial or multi-path machine tools or realization of high-functionality desires and particularly, an increase of axis control routine due to multi-axial machine tools is remarkable. In addition, further shortening of the specified period of axis control routine having high real-time properties is required to realize high-precision machining at high speed and, as a result, it is necessary to perform more pieces of processing in a shorter time.
In the hardware configuration of multi-CPU described in JP 63-181005 A and JP 1-195507 A mentioned above, the cost rises with an increasing number of CPU and further, peripheral hardware circuits on which the multi-CPU is mounted becomes more complicated, thereby increasing man-hours needed for design and maintenance. Such prior art techniques reduce the processing time of the analyzing of a machining program and the creation of interpolation preparation data, but do not directly control the increase of axis control routine due to the adoption of multi-axial machine tools and are not sufficient as measures in response to requirements in recent years and further, the processing can be made faster by adopting CPU of a higher operating frequency, but problems of heat generation and increased power consumption arise, which makes the CPU unfit as a processor used to control a machine tool used in an unfavorable environment such as a manufacturing site.
In the case of a numerical controller having a multi-core processor described in JP 2014-35564 A, on the other hand, heat generation and power consumption are reduced to a low level while the costs are decreased, but the increase of axis control routine due to the adoption of multi-axial machine tools is not directly controlled and thus, like the technologies described in JP 63-181005 A and JP 1-195507 A, the technology is not sufficient as measures in response to requirements in recent years.